#pragma once
//Image Curator Proc libs
#include "IImageProcFn.h"
#include "ImageProcFn.h"
#include "ProcParamDouble.h"
#include "ProcParamDefDouble.h"
#include "ProcParamString.h"
#include "ProcParamDefString.h"
#include "ProcParamInt.h"
#include "ProcParamDefInt.h"
#include "ImageProcStep.h"

#ifdef IMAGEPROCOPENCVLIB_EXPORTS
#define IMAGEPROCOPENCVLIB_API __declspec(dllexport)
#else
#define IMAGEPROCOPENCVLIB_API __declspec(dllimport)
#endif

class IMAGEPROCOPENCVLIB_API IAdd : public IImageProcFn
{
public:
	static const char * const FunctionNameIAdd;

public:
	IAdd(void);
	virtual ~IAdd(void);

	virtual bool	Process(ImageProcStep *step, bool DebugMode);

	virtual ImageProcFn *GetApi() { return ((IsApiValid()) ? &_fnApi : '\0');	}
	virtual bool	IsApiValid() { return _fnApi.IsValid(); }



private:
	ImageProcFn _fnApi;


};



